﻿using Shop.Core.Share;
using Shop.Model.Dto.Mine;
using Shop.Model.View.Mine;

namespace Shop.IServices;

public interface IMineDetailService: IAppService
{
    /// <summary>
    /// 我的钱包日志
    /// </summary>
    /// <param name="uId"></param>
    /// <param name="dto"></param>
    /// <returns></returns>
    AppResult<PageModel<MyWalletListVo>> MyWalletList(long uId, MyWalletListDto dto);

    /// <summary>
    /// 我的收益明细列表
    /// </summary>
    /// <param name="uId"></param>
    /// <param name="dto"></param>
    /// <returns></returns>
    AppResult<PageModel<MyEarningsListVo>> MyEarningsList(long uId, MyEarningsListDto dto);

    /// <summary>
    /// 我的收益明细数值
    /// </summary>
    /// <param name="uId"></param>
    /// <param name="dto"></param>
    /// <returns></returns>
    AppResult<MyEarningsStatisticsVo> MyEarningsStatistics(long uId, MyEarningsListDto dto);

    /// <summary>
    /// 我的顾客会员数据
    /// </summary>
    /// <param name="uId"></param>
    /// <returns></returns>
    AppResult<MyCustomerDataVo> MyCustomerData(long uId);

    /// <summary>
    /// 我的顾客会员列表
    /// </summary>
    /// <param name="uId"></param>
    /// <param name="dto"></param>
    /// <returns></returns>
    AppResult<PageModel<MyCustomerListVo>> MyCustomerList(long uId, MyCustomerListDto dto);

    /// <summary>
    /// 提现信息
    /// </summary>
    /// <param name="uId"></param>
    /// <returns></returns>
    AppResult<UserBalanceVo> UserBalance(long uId);

    /// <summary>
    /// 用户提现
    /// </summary>
    /// <param name="dto"></param>
    /// <param name="uId"></param>
    /// <returns></returns>
    AppResult Drawings(DrawingsDto dto, long uId);
}